package com.ruoyi.consume.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.consume.mapper.CartonApplyConMapper;
import com.ruoyi.consume.domain.CartonApplyCon;
import com.ruoyi.consume.service.ICartonApplyConService;

/**
 * 纸箱领用Service业务层处理
 *
 * @author ruoyi
 * @date 2021-07-23
 */
@Service
public class CartonApplyConServiceImpl implements ICartonApplyConService
{
    @Autowired
    private CartonApplyConMapper cartonApplyConMapper;

    /**
     * 查询纸箱领用
     *
     * @param cartonApplyId 纸箱领用ID
     * @return 纸箱领用
     */
    @Override
    public CartonApplyCon selectCartonApplyById(Long cartonApplyId)
    {
        return cartonApplyConMapper.selectCartonApplyById(cartonApplyId);
    }

    /**
     * 查询纸箱领用列表
     *
     * @param cartonApplyCon 纸箱领用
     * @return 纸箱领用
     */
    @Override
    public List<CartonApplyCon> selectCartonApplyList(CartonApplyCon cartonApplyCon)
    {
        return cartonApplyConMapper.selectCartonApplyList(cartonApplyCon);
    }

    /**
     * 新增纸箱领用
     *
     * @param cartonApplyCon 纸箱领用
     * @return 结果
     */
    @Override
    public int insertCartonApply(CartonApplyCon cartonApplyCon)
    {
        cartonApplyCon.setCreateTime(DateUtils.getNowDate());
        return cartonApplyConMapper.insertCartonApply(cartonApplyCon);
    }

    /**
     * 修改纸箱领用
     *
     * @param cartonApplyCon 纸箱领用
     * @return 结果
     */
    @Override
    public int updateCartonApply(CartonApplyCon cartonApplyCon)
    {
        cartonApplyCon.setUpdateTime(DateUtils.getNowDate());
        return cartonApplyConMapper.updateCartonApply(cartonApplyCon);
    }

    /**
     * 批量删除纸箱领用
     *
     * @param cartonApplyIds 需要删除的纸箱领用ID
     * @return 结果
     */
    @Override
    public int deleteCartonApplyByIds(Long[] cartonApplyIds)
    {
        return cartonApplyConMapper.deleteCartonApplyByIds(cartonApplyIds);
    }

    /**
     * 删除纸箱领用信息
     *
     * @param cartonApplyId 纸箱领用ID
     * @return 结果
     */
    @Override
    public int deleteCartonApplyById(Long cartonApplyId)
    {
        return cartonApplyConMapper.deleteCartonApplyById(cartonApplyId);
    }

    /**
     * 更新库存量表
     *
     * @param cartonApplyCon 纸箱领用ID
     * @return 结果
     */
    @Override
    public int updateCartonAmount(CartonApplyCon cartonApplyCon){
        return cartonApplyConMapper.updateCartonAmount(cartonApplyCon);
    }

    /**
     * 更新领用状态
     *
     * @param cartonApplyId 纸箱领用ID
     * @return 结果
     */
    @Override
    public int updateConsumeStatus(Long cartonApplyId){
        return cartonApplyConMapper.updateConsumeStatus(cartonApplyId);
    }

    /**
     * 退回操作
     *
     * @param cartonApplyId 纸箱领用ID
     * @return 结果
     */
    @Override
    public int updateApprovalStatus(Long cartonApplyId){
        return cartonApplyConMapper.updateApprovalStatus(cartonApplyId);
    }
}
